const store = {
  state: {
    num: 20,
  },
  actions: {
    add1(newState: { num: number }) {
      newState.num++;
    },
    add2(newState: { num: number }, action: { type: string; val: number }) {
      newState.num += action.val;
    },
  },
  // 名字统一管理
  // add1:'add1',
  // add2:'add2'

  // actionNames:{
  //     add1:'add1',
  //     add2:'add2'
  // }

  actionNames: {},
};
//我们现在想做到actionNames自动生成。不用我每一次添加一个方法，都要在actionNames手动添加键值对，这样很麻烦。
const actionNames: any = {}; //定义一个全局的actionNames
//actionNames有多少对键值对，取决于action里面有多少个函数。所以遍历store.actions,给actionNames添加键值对
for (const key in store.actions) {
  actionNames[key] = key;
}
store.actionNames = actionNames;

export default store;
